﻿namespace RndMaterialDisposalService.Models.RequestModel
{
    /// <summary>
    /// 
    /// </summary>
    public class VehicleMaintenanceReq
    {
        /// <summary>
        /// 
        /// </summary>
        public ApproverModel Approver { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public DateTime? ApplicantDate { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? Applicant { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public FormHeader FormHeader { get; set; } = new FormHeader();
        /// <summary>
        /// 
        /// </summary>
        public List<Attachment> UploadFiles { get; set; } = new List<Attachment>();
        /// <summary>
        /// 
        /// </summary>
        public string Signature { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? CarType { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? CarNumber { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? DriverName { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? DriverId { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? DeptName { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? DeptCode { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? CurrentKM { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? LastMaintainKM { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public List<string> CarEngineSanqing { get; set; } = new List<string>();
        /// <summary>
        /// 
        /// </summary>
        public List<string> CarMaintain { get; set; } = new List<string>();
        /// <summary>
        /// 
        /// </summary>
        public string? Remark { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? UpkeepCosts { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? SupplierName { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? SupplierEmail { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string? DeptLeader { get; set; }


    }

    /// <summary>
    /// 
    /// </summary>
    public class ApproverModel 
    {
        /// <summary>
        /// 
        /// </summary>
        public UserModel Administrative { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public UserModel CarManager { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public UserModel DeptLeader { get; set; }
    }

    /// <summary>
    /// 
    /// </summary>
    public class UserModel {
        /// <summary>
        /// 
        /// </summary>
        public string UserId { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public string UserName { get; set; }
    }
}
